home *** CD-ROM | disk | FTP | other *** search
/ Celestin Apprentice 2 / Apprentice-Release2.iso / Source Code / Peter Lewis / PNL Libraries / MyMenus.p < prev    next >
Encoding:
Text File  |  1994-08-08  |  1.8 KB  |  82 lines  |  [TEXT/PJMM]

  1. unit MyMenus;
  2.  
  3. interface
  4.  
  5.     procedure SetIDItem (menu, item: integer; s: str255);
  6.     function GetIDItem (menu, item: integer): str255;
  7.     procedure SetItemEnable (mh: menuHandle; item: integer; enable: boolean);
  8.     function GetItemEnable (mh: menuHandle; item: integer): boolean;
  9.     procedure SetIDItemEnable (menu, item: integer; enable: boolean);
  10.     function GetIDItemEnable (menu, item: integer): boolean;
  11.     procedure DotItem (mh: menuHandle; item: integer; dotted: boolean);
  12.     procedure ClearMenuHandle (mh: MenuHandle);
  13.  
  14. implementation
  15.  
  16. {$S Util}
  17.     procedure ClearMenuHandle (mh: MenuHandle);
  18.     begin
  19.         while (CountMItems(mh) > 0) do begin
  20.             DelMenuItem(mh, 1);
  21.         end;
  22.     end;
  23.  
  24. {$S Util}
  25.     procedure SetIDItem (menu, item: integer; s: str255);
  26.     begin
  27.         SetItem(GetMHandle(menu), item, s);
  28.     end;
  29.  
  30. {$S Util}
  31.     function GetIDItem (menu, item: integer): str255;
  32.         var
  33.             s: str255;
  34.     begin
  35.         GetItem(GetMHandle(menu), item, s);
  36.         GetIDItem := s;
  37.     end;
  38.  
  39. {$S Util}
  40.     procedure SetItemEnable (mh: menuHandle; item: integer; enable: boolean);
  41.     begin
  42.         if enable then begin
  43.             EnableItem(mh, item);
  44.         end
  45.         else begin
  46.             DisableItem(mh, item);
  47.         end;
  48.     end;
  49.  
  50. {$S Util}
  51.     procedure SetIDItemEnable (menu, item: integer; enable: boolean);
  52.     begin
  53.         SetItemEnable(GetMHandle(menu), item, enable);
  54.     end;
  55.  
  56. {$S Util}
  57.     function GetItemEnable (mh: menuHandle; item: integer): boolean;
  58.     begin
  59.         if item > 31 then begin
  60.             GetItemEnable := true;
  61.         end
  62.         else begin
  63.             GetItemEnable := BTST(mh^^.enableFlags, item);
  64.         end;
  65.     end;
  66.  
  67. {$S Util}
  68.     function GetIDItemEnable (menu, item: integer): boolean;
  69.     begin
  70.         GetIDItemEnable := GetItemEnable(GetMHandle(menu), item);
  71.     end;
  72.  
  73. {$S Util}
  74.     procedure DotItem (mh: menuHandle; item: integer; dotted: boolean);
  75.     begin
  76.         if dotted then
  77.             SetItemMark(mh, item, '•')
  78.         else
  79.             SetItemMark(mh, item, chr(0));
  80.     end;
  81.  
  82. end.